package com.nexus.core.sys.dto;

import com.alibaba.excel.annotation.ExcelProperty;
import com.nexus.core.query.annotation.QueryCondition;
import com.nexus.core.query.annotation.QueryType;
import com.nexus.core.service.dto.BaseDTO;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 系统日志
 *
 * @Date 2025/7/28 15:08
 * @Author Administrator
 **/
@Data
@EqualsAndHashCode(callSuper = false)
public class SysLogDTO extends BaseDTO {


    /**
     * 日志类型
     */
    @ExcelProperty("日志类型")
    @QueryCondition(tableField = "log_type", type = QueryType.EQ)
    private String logType;
    /**
     * 日志等级
     */
    @ExcelProperty("日志等级")
    @QueryCondition(tableField = "log_grade", type = QueryType.EQ)
    private String logGrade;
    /**
     * 日志名称
     */
    @ExcelProperty("日志名称")
    @QueryCondition(tableField = "name", type = QueryType.EQ)
    private String name;
    /**
     * 请求地址
     */
    @ExcelProperty("请求地址")
    @QueryCondition(tableField = "url", type = QueryType.EQ)
    private String url;
    /**
     * 操作用户
     */
    @ExcelProperty("操作用户")
    @QueryCondition(tableField = "oper_by", type = QueryType.EQ)
    private String operBy;
    /**
     * 目标类
     */
    @ExcelProperty("目标类")
    @QueryCondition(tableField = "point_class_url", type = QueryType.EQ)
    private String pointClassUrl;
    /**
     * 返回信息
     */
    @ExcelProperty("返回信息")
    @QueryCondition(tableField = "point_message", type = QueryType.EQ)
    private String pointMessage;
    /**
     * 详细信息
     */
    @ExcelProperty("详细信息")
    @QueryCondition(tableField = "point_detailed", type = QueryType.EQ)
    private String pointDetailed;
    /**
     * 组织机构
     */
    @ExcelProperty("组织机构")
    @QueryCondition(tableField = "org.id", type = QueryType.EQ)
    private SysOrgDTO org;
}